/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package paquetevistas;

import Seguridad.Vistas.LogBuscar;
import Seguridad.Vistas.ModificarContrasena;
import Seguridad.Vistas.RolBuscar;
import Seguridad.Vistas.UsuarioBuscar;
import paquetevistas.ventas.Clientes;
import paquetevistas.ventas.Ventas;
import paquetevistas.compra.BuscarCompra;
import paquetevistas.compra.BuscarProveedor;
import paquetevistas.configuracion.Receta;
import paquetevistas.almacen.Productos;
import paquetevistas.almacen.Movimientos;
import paquetevistas.almacen.OrdenRequerimiento1;
import paquetevistas.configuracion.Maquinas;
import paquetevistas.almacen.Inventario;
import paquetevistas.almacen.Kardex;
import paquetevistas.almacen.Almacen;
import paquetevistas.configuracion.Actividades;
import javax.swing.JOptionPane;
import produccion.vistas.Asignacion;
import produccion.vistas.OrdenProduccion;
import produccion.vistas.ReporteDeAsignacion;
import produccion.vistas.ReporteProduccionPorActividad;
import produccion.vistas.ReporteProduccion;
import produccion.vistas.ReporteProduccionPorObrero;
import modelos.Usuario;
import Seguridad.Controlador.controladorseguridad;
import java.util.Date;
import javax.swing.ImageIcon;
import paquetevistas.almacen.CalcularStockMP;
import paquetevistas.almacen.NecesidadEstimada;
import paquetevistas.almacen.ReporteProductosMovimientos;
import paquetevistas.almacen.ReporteReceta;
import paquetevistas.almacen.ReporteStock;
import paquetevistas.configuracion.ParametrosAlgoritmos;
import paquetevistas.ventas.ReporteClientes;
import paquetevistas.ventas.ReporteVentas;
import produccion.vistas.BuscarProduccion;
import paquetevistas.compra.ReporteCompras;

/**
 *
 * @author mariofcandia
 */
public class Escritorio extends javax.swing.JFrame {

    /**
     * Creates new form Escritorio
     */
    //Almacen
    public static Almacen almacen;
    public static Movimientos movimientos;
    public static Kardex kardex;
    public static Inventario inventario;
    public static OrdenRequerimiento1 ordenrequerimiento1;
    public static Productos producto;
    public static CalcularStockMP stock;
    public static NecesidadEstimada necesidadestimada;
    public static ReporteStock reportestock;
    public static ReporteProductosMovimientos reportemovs;
    public static ReporteReceta reporterecetas;
    //Configuracion
    public static Empleado empleado;
    public static Maquinas maquina;
    public static Receta receta;
    public static Actividades actividades;
    public static ParametrosAlgoritmos parametrosAlgoritmos;
    //Seguridad
    public static UsuarioBuscar usuario;
    public static RolBuscar rol;
    public static LogBuscar log;
    public static ModificarContrasena modificarcontrasena;
    public static controladorseguridad mycontroladorseguridad = new controladorseguridad();
    public static Usuario user = lbj.LBJ.Login.usuario;
    //Producción
    public static Asignacion buscarAsignacion;
    public static BuscarProduccion buscarProduccion;
    public static ReporteProduccion reporteProduccion;
    public static produccion.vistas.OrdenProduccion ordenDeProduccion;
    public static produccion.vistas.ReporteProduccionPorObrero reporteProduccionPorObrero;
    public static produccion.vistas.ReporteProduccionPorActividad reporteProduccionPorActividad;
    public static produccion.vistas.ReporteDeAsignacion reporteAsignacion;
    //Compras
    public static BuscarCompra compra;
    public static BuscarProveedor proveedor;
    public static ReporteCompras reporteCompras;
    //Ventas
    public static Clientes clientes;
    public static Ventas ventas;
    public static ReporteVentas reporteVentas;
    public static ReporteClientes reporteClientes;

    public Escritorio() {
        initComponents();
        this.setTitle("Sistema LBJ");
        this.setExtendedState(MAXIMIZED_BOTH);
        try {
            this.setIconImage(new ImageIcon(getClass().getResource("../imagenes/iconolbj.png")).getImage());
        } catch (Exception ex) {
        }
        
        mycontroladorseguridad.insertarlog(user, new Date(), "Login", "Usuario", "Iniciar Sesión");
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jDesktopPane1 = new javax.swing.JDesktopPane();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        jMenuItem20 = new javax.swing.JMenuItem();
        jMenu2 = new javax.swing.JMenu();
        jMenuItem23 = new javax.swing.JMenuItem();
        jMenuItem24 = new javax.swing.JMenuItem();
        jMenu5 = new javax.swing.JMenu();
        jMenuItem25 = new javax.swing.JMenuItem();
        jMenu3 = new javax.swing.JMenu();
        jMenuItem21 = new javax.swing.JMenuItem();
        jMenuItem22 = new javax.swing.JMenuItem();
        jMenu9 = new javax.swing.JMenu();
        jMenuItem31 = new javax.swing.JMenuItem();
        Almacen = new javax.swing.JMenu();
        jMenuItem1 = new javax.swing.JMenuItem();
        jMenuItem2 = new javax.swing.JMenuItem();
        jMenuItem4 = new javax.swing.JMenuItem();
        jMenuItem6 = new javax.swing.JMenuItem();
        jMenu4 = new javax.swing.JMenu();
        jMenuItem5 = new javax.swing.JMenuItem();
        jMenuItem7 = new javax.swing.JMenuItem();
        jMenuItem8 = new javax.swing.JMenuItem();
        jMenuItem29 = new javax.swing.JMenuItem();
        Configuracion = new javax.swing.JMenu();
        jMenuItem9 = new javax.swing.JMenuItem();
        jMenuItem10 = new javax.swing.JMenuItem();
        jMenuItem11 = new javax.swing.JMenuItem();
        jMenuItem12 = new javax.swing.JMenuItem();
        jMenu6 = new javax.swing.JMenu();
        jMenuItem19 = new javax.swing.JMenuItem();
        jMenuItem17 = new javax.swing.JMenuItem();
        jMenuItem26 = new javax.swing.JMenuItem();
        jMenu8 = new javax.swing.JMenu();
        jMenuItem18 = new javax.swing.JMenuItem();
        jMenuItem28 = new javax.swing.JMenuItem();
        jMenuItem27 = new javax.swing.JMenuItem();
        jMenuItem30 = new javax.swing.JMenuItem();
        jMenu7 = new javax.swing.JMenu();
        jMenuItem13 = new javax.swing.JMenuItem();
        jMenuItem14 = new javax.swing.JMenuItem();
        jMenuItem15 = new javax.swing.JMenuItem();
        jSeparator1 = new javax.swing.JPopupMenu.Separator();
        jMenuItem16 = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jDesktopPane1.setPreferredSize(new java.awt.Dimension(800, 600));

        jMenu1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/home 2.png"))); // NOI18N
        jMenu1.setText("Inicio");
        jMenu1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jMenu1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        jMenu1.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jMenu1.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem20.setText("Salir");
        jMenuItem20.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem20ActionPerformed(evt);
            }
        });
        jMenu1.add(jMenuItem20);

        jMenuBar1.add(jMenu1);

        jMenu2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Ventas 2.png"))); // NOI18N
        jMenu2.setText("Ventas");
        jMenu2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        jMenu2.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jMenu2.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem23.setText("Ventas");
        jMenuItem23.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem23ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem23);

        jMenuItem24.setText("Clientes");
        jMenuItem24.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem24ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem24);

        jMenu5.setText("Reportes");

        jMenuItem25.setText("Ventas");
        jMenuItem25.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem25ActionPerformed(evt);
            }
        });
        jMenu5.add(jMenuItem25);

        jMenu2.add(jMenu5);

        jMenuBar1.add(jMenu2);

        jMenu3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/compras 2.png"))); // NOI18N
        jMenu3.setText("Compras");
        jMenu3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jMenu3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        jMenu3.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jMenu3.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem21.setText("Compras");
        jMenuItem21.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem21ActionPerformed(evt);
            }
        });
        jMenu3.add(jMenuItem21);

        jMenuItem22.setText("Proveedores");
        jMenuItem22.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem22ActionPerformed(evt);
            }
        });
        jMenu3.add(jMenuItem22);

        jMenu9.setText("Reportes");

        jMenuItem31.setText("Compras");
        jMenuItem31.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem31ActionPerformed(evt);
            }
        });
        jMenu9.add(jMenuItem31);

        jMenu3.add(jMenu9);

        jMenuBar1.add(jMenu3);

        Almacen.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/almacen 2.png"))); // NOI18N
        Almacen.setText("Almacen");
        Almacen.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        Almacen.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        Almacen.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        Almacen.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem1.setText("Productos");
        jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem1ActionPerformed(evt);
            }
        });
        Almacen.add(jMenuItem1);

        jMenuItem2.setText("Movimientos");
        jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem2ActionPerformed(evt);
            }
        });
        Almacen.add(jMenuItem2);

        jMenuItem4.setText("Calcular Stock");
        jMenuItem4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem4ActionPerformed(evt);
            }
        });
        Almacen.add(jMenuItem4);

        jMenuItem6.setText("Inventario");
        jMenuItem6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem6ActionPerformed(evt);
            }
        });
        Almacen.add(jMenuItem6);

        jMenu4.setText("Reportes");

        jMenuItem5.setText("Kardex");
        jMenuItem5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem5ActionPerformed(evt);
            }
        });
        jMenu4.add(jMenuItem5);

        jMenuItem7.setLabel("Movimientos");
        jMenuItem7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem7ActionPerformed(evt);
            }
        });
        jMenu4.add(jMenuItem7);

        jMenuItem8.setText("Stock minimo");
        jMenuItem8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem8ActionPerformed(evt);
            }
        });
        jMenu4.add(jMenuItem8);

        jMenuItem29.setText("Receta");
        jMenuItem29.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem29ActionPerformed(evt);
            }
        });
        jMenu4.add(jMenuItem29);

        Almacen.add(jMenu4);

        jMenuBar1.add(Almacen);

        Configuracion.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/configuracion 2.png"))); // NOI18N
        Configuracion.setText("Configuracion");
        Configuracion.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        Configuracion.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        Configuracion.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        Configuracion.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem9.setText("Empleados");
        jMenuItem9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem9ActionPerformed(evt);
            }
        });
        Configuracion.add(jMenuItem9);

        jMenuItem10.setText("Maquinas");
        jMenuItem10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem10ActionPerformed(evt);
            }
        });
        Configuracion.add(jMenuItem10);

        jMenuItem11.setText("Actividades");
        jMenuItem11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem11ActionPerformed(evt);
            }
        });
        Configuracion.add(jMenuItem11);

        jMenuItem12.setText("Configuracion de Algoritmos");
        jMenuItem12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem12ActionPerformed(evt);
            }
        });
        Configuracion.add(jMenuItem12);

        jMenuBar1.add(Configuracion);

        jMenu6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/produccion2.png"))); // NOI18N
        jMenu6.setText("Produccion");
        jMenu6.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jMenu6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        jMenu6.setVerifyInputWhenFocusTarget(false);
        jMenu6.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jMenu6.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem19.setText("Orden de Producción");
        jMenuItem19.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem19ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem19);

        jMenuItem17.setText("Asignaciones");
        jMenuItem17.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem17ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem17);

        jMenuItem26.setText("Producciones");
        jMenuItem26.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem26ActionPerformed(evt);
            }
        });
        jMenu6.add(jMenuItem26);

        jMenu8.setText("Reportes");

        jMenuItem18.setText("Reporte Produccion Por Galleta");
        jMenuItem18.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem18ActionPerformed(evt);
            }
        });
        jMenu8.add(jMenuItem18);

        jMenuItem28.setText("Reporte Produccion Por Obrero");
        jMenuItem28.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem27ActionPerformed(evt);
            }
        });
        jMenu8.add(jMenuItem28);

        jMenuItem27.setText("Reporte Produccion Por Actividad");
        jMenuItem27.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem27ActionPerformed1(evt);
            }
        });
        jMenu8.add(jMenuItem27);

        jMenuItem30.setText("Reporte De Asignacion");
        jMenuItem30.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem30ActionPerformed(evt);
            }
        });
        jMenu8.add(jMenuItem30);

        jMenu6.add(jMenu8);

        jMenuBar1.add(jMenu6);

        jMenu7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/seguridad 2.png"))); // NOI18N
        jMenu7.setText("Seguridad");
        jMenu7.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jMenu7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        jMenu7.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jMenu7.setVerticalTextPosition(javax.swing.SwingConstants.TOP);

        jMenuItem13.setText("Usuarios");
        jMenuItem13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem13ActionPerformed(evt);
            }
        });
        jMenu7.add(jMenuItem13);

        jMenuItem14.setText("Roles");
        jMenuItem14.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem14ActionPerformed(evt);
            }
        });
        jMenu7.add(jMenuItem14);

        jMenuItem15.setText("Log");
        jMenuItem15.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem15ActionPerformed(evt);
            }
        });
        jMenu7.add(jMenuItem15);
        jMenu7.add(jSeparator1);

        jMenuItem16.setText("Modificar Contraseña");
        jMenuItem16.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem16ActionPerformed(evt);
            }
        });
        jMenu7.add(jMenuItem16);

        jMenuBar1.add(jMenu7);

        setJMenuBar(jMenuBar1);

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jDesktopPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 918, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, jDesktopPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 1055, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed
        // TODO add your handling code here:
        if (movimientos == null || movimientos.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 8)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                movimientos = new Movimientos();
                jDesktopPane1.add(movimientos);
                movimientos.setVisible(true);
            }
        } else {
            try {
                movimientos.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem2ActionPerformed

    private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed
        // TODO add your handling code here:
        if (kardex == null || kardex.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 12)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                kardex = new Kardex();
                jDesktopPane1.add(kardex);
                kardex.setVisible(true);
            }
        } else {
            try {
                kardex.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem5ActionPerformed

    private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem6ActionPerformed
        // TODO add your handling code here:
        if (inventario == null || inventario.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 11)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                inventario = new Inventario();
                jDesktopPane1.add(inventario);
                inventario.setVisible(true);
            }
        } else {
            try {
                inventario.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem6ActionPerformed

    private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed
        // TODO add your handling code here:
        if (stock == null || stock.isClosed() || stock.isVisible() == false) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 10)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                stock = new CalcularStockMP();
                jDesktopPane1.add(stock);
                stock.setVisible(true);
            }
        } else {
            try {
                stock.setVisible(true);
                stock.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem4ActionPerformed

    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed

        if (producto == null || producto.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 7)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                producto = new Productos();
                jDesktopPane1.add(producto);
                producto.setVisible(true);
            }
        } else {
            try {
                producto.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem1ActionPerformed

    private void jMenuItem13ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem13ActionPerformed
        // TODO add your handling code here:
//        Usuario user=lbj.LBJ.Login.usuario;//es el usuario logeado
        if (usuario == null || usuario.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 25)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                usuario = new UsuarioBuscar();
                jDesktopPane1.add(usuario);
                usuario.setVisible(true);
            }
        } else {
            try {
                usuario.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem13ActionPerformed

    private void jMenuItem14ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem14ActionPerformed
        // TODO add your handling code here:
        if (rol == null || rol.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 26)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                rol = new RolBuscar();
                jDesktopPane1.add(rol);
                rol.setVisible(true);
            }
        } else {
            try {
                rol.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem14ActionPerformed

    private void jMenuItem15ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem15ActionPerformed
        // TODO add your handling code here:
        if (log == null || log.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 27)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                log = new LogBuscar();
                jDesktopPane1.add(log);
                log.setVisible(true);
            }
        } else {
            try {
                log.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem15ActionPerformed

    private void jMenuItem16ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem16ActionPerformed
        // TODO add your handling code here:
        if (modificarcontrasena == null || modificarcontrasena.isClosed()) {
                modificarcontrasena = new ModificarContrasena();
                jDesktopPane1.add(modificarcontrasena);
                modificarcontrasena.setVisible(true);
        } else {
            try {
                modificarcontrasena.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem16ActionPerformed

    private void jMenuItem17ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem17ActionPerformed
        if (buscarAsignacion == null || buscarAsignacion.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 21)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                buscarAsignacion = new Asignacion();
                jDesktopPane1.add(buscarAsignacion);
                buscarAsignacion.setVisible(true);
            }
        } else {
            try {
                buscarAsignacion.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem17ActionPerformed

    private void jMenuItem9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem9ActionPerformed
        if (empleado == null || empleado.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 16)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                empleado = new Empleado();
                jDesktopPane1.add(empleado);
                empleado.setVisible(true);
            }
        } else {
            try {
                empleado.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem9ActionPerformed

    private void jMenuItem10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem10ActionPerformed
        if (maquina == null || maquina.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 17)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                maquina = new Maquinas();
                jDesktopPane1.add(maquina);
                maquina.setVisible(true);
            }
        } else {
            try {
                maquina.setSelected(true);
            } catch (Exception e) {
            }
        }


    }//GEN-LAST:event_jMenuItem10ActionPerformed

    private void jMenuItem18ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem18ActionPerformed
        if (reporteProduccion == null || reporteProduccion.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 22)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteProduccion = new ReporteProduccion();
                jDesktopPane1.add(reporteProduccion);
                reporteProduccion.setVisible(true);
            }
        } else {
            try {
                reporteProduccion.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem18ActionPerformed

    private void jMenuItem19ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem19ActionPerformed
        if (ordenDeProduccion == null || ordenDeProduccion.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 20)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                ordenDeProduccion = new OrdenProduccion();
                jDesktopPane1.add(ordenDeProduccion);
                ordenDeProduccion.setVisible(true);
            }
        } else {
            try {
                ordenDeProduccion.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem19ActionPerformed

    private void jMenuItem20ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem20ActionPerformed
        // TODO add your handling code here:
        if (JOptionPane.showConfirmDialog(rootPane, "¿Desea realmente salir del sistema?",
                "Mensaje", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
            mycontroladorseguridad.insertarlog(user, new Date(), "Logout", "Usuario", "Cerrar Sesión");
            System.exit(0);
        }
    }//GEN-LAST:event_jMenuItem20ActionPerformed

    private void jMenuItem11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem11ActionPerformed
        // TODO add your handling code here:
        if (actividades == null || actividades.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 18)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                actividades = new Actividades();
                jDesktopPane1.add(actividades);
                actividades.setVisible(true);
            }
        } else {
            try {
                actividades.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem11ActionPerformed

    private void jMenuItem21ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem21ActionPerformed
        // TODO add your handling code here:
        if (compra == null || compra.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 5)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                compra = new BuscarCompra();
                jDesktopPane1.add(compra);
                compra.setVisible(true);
            }
        } else {
            try {
                compra.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem21ActionPerformed

    private void jMenuItem22ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem22ActionPerformed
        // TODO add your handling code here:
        if (proveedor == null || proveedor.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 6)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                proveedor = new BuscarProveedor();
                jDesktopPane1.add(proveedor);
                proveedor.setVisible(true);
            }
        } else {
            try {
                proveedor.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem22ActionPerformed

    private void jMenuItem23ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem23ActionPerformed
        // TODO add your handling code here:
        if (ventas == null || ventas.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 1)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                ventas = new Ventas();
                jDesktopPane1.add(ventas);
                ventas.setVisible(true);
            }
        } else {
            try {
                ventas.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem23ActionPerformed

    private void jMenuItem24ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem24ActionPerformed
        // TODO add your handling code here:
        if (clientes == null || clientes.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 2)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                clientes = new Clientes();
                jDesktopPane1.add(clientes);
                clientes.setVisible(true);
            }
        } else {
            try {
                clientes.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem24ActionPerformed

    private void jMenuItem25ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem25ActionPerformed
        if (reporteVentas == null || reporteVentas.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 3)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteVentas = new ReporteVentas();
                jDesktopPane1.add(reporteVentas);
                reporteVentas.setVisible(true);
            }
        } else {
            try {
                reporteVentas.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem25ActionPerformed

    private void jMenuItem12ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem12ActionPerformed
        // TODO add your handling code here:
        if (parametrosAlgoritmos == null || parametrosAlgoritmos.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 19)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                parametrosAlgoritmos = new ParametrosAlgoritmos();
                jDesktopPane1.add(parametrosAlgoritmos);
                parametrosAlgoritmos.setVisible(true);
            }
        } else {
            try {
                parametrosAlgoritmos.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem12ActionPerformed

    private void jMenuItem8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem8ActionPerformed
        if (reportestock == null || reportestock.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 14)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reportestock = new ReporteStock();
                jDesktopPane1.add(reportestock);
                reportestock.setVisible(true);
            }
        } else {
            try {
                reportestock.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem8ActionPerformed

    private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem7ActionPerformed
        if (reportemovs == null || reportemovs.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 13)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reportemovs = new ReporteProductosMovimientos();
                jDesktopPane1.add(reportemovs);
                reportemovs.setVisible(true);
            }
        } else {
            try {
                reportemovs.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem7ActionPerformed

    private void jMenuItem27ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem27ActionPerformed
        // TODO add your handling code here:
        if (reporteProduccionPorObrero == null || reporteProduccionPorObrero.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 23)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteProduccionPorObrero = new ReporteProduccionPorObrero();
                jDesktopPane1.add(reporteProduccionPorObrero);
                reporteProduccionPorObrero.setVisible(true);
            }
        } else {
            try {
                reporteProduccionPorObrero.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem27ActionPerformed

    private void jMenuItem29ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem29ActionPerformed
        if (reporterecetas == null || reporterecetas.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 15)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporterecetas = new ReporteReceta();
                jDesktopPane1.add(reporterecetas);
                reporterecetas.setVisible(true);
            }
        } else {
            try {
                reporterecetas.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem29ActionPerformed

    private void jMenuItem27ActionPerformed1(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem27ActionPerformed1

        if (reporteProduccionPorActividad == null || reporteProduccionPorActividad.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 24)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteProduccionPorActividad = new ReporteProduccionPorActividad();
                jDesktopPane1.add(reporteProduccionPorActividad);
                reporteProduccionPorActividad.setVisible(true);
            }
        } else {
            try {
                reporteProduccionPorActividad.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem27ActionPerformed1

    private void jMenuItem30ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem30ActionPerformed
        // TODO add your handling code here:
        if (reporteAsignacion == null || reporteAsignacion.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 29)) {
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteAsignacion = new ReporteDeAsignacion();
                jDesktopPane1.add(reporteAsignacion);
                reporteAsignacion.setVisible(true);
            }
        } else {
            try {
                reporteAsignacion.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem30ActionPerformed

    private void jMenuItem26ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem26ActionPerformed
        if (buscarProduccion == null || buscarProduccion.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 30)) { //SAORI REVISA ESTO
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                buscarProduccion = new BuscarProduccion();
                jDesktopPane1.add(buscarProduccion);
                buscarProduccion.setVisible(true);
            }
        } else {
            try {
                buscarProduccion.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem26ActionPerformed

    private void jMenuItem31ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem31ActionPerformed
        // TODO add your handling code here:
        if (reporteCompras == null || reporteCompras.isClosed()) {
            if (!mycontroladorseguridad.validarAcceso(user.getRol().getIdrol(), 31)) { 
                JOptionPane.showMessageDialog(null, "Usted no tiene permiso para acceder a esta vista.", "Mensaje", JOptionPane.WARNING_MESSAGE);
            } else {
                reporteCompras = new ReporteCompras();
                jDesktopPane1.add(reporteCompras);
                reporteCompras.setVisible(true);
            }
        } else {
            try {
                reporteCompras.setSelected(true);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_jMenuItem31ActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Escritorio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Escritorio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Escritorio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Escritorio.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Escritorio().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JMenu Almacen;
    private javax.swing.JMenu Configuracion;
    private javax.swing.JDesktopPane jDesktopPane1;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenu jMenu3;
    private javax.swing.JMenu jMenu4;
    private javax.swing.JMenu jMenu5;
    private javax.swing.JMenu jMenu6;
    private javax.swing.JMenu jMenu7;
    private javax.swing.JMenu jMenu8;
    private javax.swing.JMenu jMenu9;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JMenuItem jMenuItem1;
    private javax.swing.JMenuItem jMenuItem10;
    private javax.swing.JMenuItem jMenuItem11;
    private javax.swing.JMenuItem jMenuItem12;
    private javax.swing.JMenuItem jMenuItem13;
    private javax.swing.JMenuItem jMenuItem14;
    private javax.swing.JMenuItem jMenuItem15;
    private javax.swing.JMenuItem jMenuItem16;
    private javax.swing.JMenuItem jMenuItem17;
    private javax.swing.JMenuItem jMenuItem18;
    private javax.swing.JMenuItem jMenuItem19;
    private javax.swing.JMenuItem jMenuItem2;
    private javax.swing.JMenuItem jMenuItem20;
    private javax.swing.JMenuItem jMenuItem21;
    private javax.swing.JMenuItem jMenuItem22;
    private javax.swing.JMenuItem jMenuItem23;
    private javax.swing.JMenuItem jMenuItem24;
    private javax.swing.JMenuItem jMenuItem25;
    private javax.swing.JMenuItem jMenuItem26;
    private javax.swing.JMenuItem jMenuItem27;
    private javax.swing.JMenuItem jMenuItem28;
    private javax.swing.JMenuItem jMenuItem29;
    private javax.swing.JMenuItem jMenuItem30;
    private javax.swing.JMenuItem jMenuItem31;
    private javax.swing.JMenuItem jMenuItem4;
    private javax.swing.JMenuItem jMenuItem5;
    private javax.swing.JMenuItem jMenuItem6;
    private javax.swing.JMenuItem jMenuItem7;
    private javax.swing.JMenuItem jMenuItem8;
    private javax.swing.JMenuItem jMenuItem9;
    private javax.swing.JPopupMenu.Separator jSeparator1;
    // End of variables declaration//GEN-END:variables
}
